Implementing Projection-based Strictness Analysis
نویسندگان
چکیده
Projection-based backwards strictness analysis has been understood for some years. Surprisingly, even though the method is fairly simple and quite general, no reports of its implementation have appeared. This paper describes ideas underlying our prototype implementation of the analysis for a simple programming language. The implementation serves as a case study before applying the method in the Glasgow Haskell compiler.
منابع مشابه
Projection Based Program Analysis
Projection based program analysis techniques are remarkable for their ability to give highly detailed and useful information not obtainable by other methods The rst proposed projection based analysis techniques were those of Wadler and Hughes for strictness analysis and Launchbury for binding time analysis both techniques are restricted to analysis of rst order monomorphic languages Hughes and ...
متن کاملAnalysing Functions by Projection-Based Backward Abstraction
Various techniques for strictness analysis by non-standard interpretation have been proposed in which the basic non-standard values are projections. We show that continuous functions can be completely characterised by appropriate forward and backward abstractions.
متن کاملCompiling Laziness Using Projection Types
Strictness analysis is accepted as an important tool for the eecient implementation of lazy functional languages. However, the analyses are usually rst-order and the optimisations that follow may be ad hoc. Using projections to represent static properties of programs is appealing because they naturally describe component-wise demand on data structures and can handle latent demands such as head-...
متن کاملHyperstrictness and the Parallel Evaluation of Lazy Functional Programs
Strictness analysis can be used for automatic parallelization of lazy functional programs while preserving their semantics (and termination properties, in particular). This paper considers ways of exploiting strictness analysis in implementing functional languages eeciently on stock parallel hardware. A strictness{based parallel evaluation model is presented, and is compared with the more gener...
متن کاملProjections for Polymorphic First-Order Strictness Analysis
We apply the categorical properties of polymorphic functions to compile-time analysis, speciically projection-based strictness analysis. First we interpret parameterised types as functors in a suitable category, and show that they preserve monics and epics. Then we deene \strong" and \weak" polymorphism, the latter admitting certain projections that are not polymorphic in the usual sense. We pr...
متن کامل